// const arr = (num) => {
//   console.log(num)
//   if (num > 0) {
//     arr(num - 1)
//   }
// }
// arr(10)

// [1,1,2,3,5,8,21,....]
// const arr = (index) => {
//   if (index <= 2) return 1
//   return arr(index - 1) + arr(index - 2)
// }
// console.log(arr(7))

// 用空间储存计算数据
const fid = (num, memo) => {
  if (num <= 2) return 1
  // 有旧数据就用  没有就计算
  memo[num] = memo[num] || fid(num - 1, memo) + fid(num - 2, memo)

  return memo[num]
}

console.log(fid(1000, []))
